package com.zg.autoflow.service;

import com.zg.autoflow.req.*;
import com.zg.autoflow.vo.WorkflowStepDataVo;
import com.zg.autoflow.vo.WorkflowVo;
import com.zg.common.core.dao.autoflow.entity.SettleBizform;

import java.util.List;
import java.util.Map;

/**
* @author zg
*/
public interface WorkflowManageService {

    WorkflowVo startWorkflow(StartWorkflowReq startWorkflowReq);

    WorkflowVo submitWorkflow(SubmitWorkflowReq submitWorkflowReq);

    String backWorkflow(BackWorkflowReq backWorkflowReq);

    String cancelWorkflow(CancelWorkflowReq cancelWorkflowReq);

    WorkflowStepDataVo getStepData(WorkflowStepDataReq workflowStepDataReq);

    /**
     * 获取数据库存储的原始数据
     * @return
     */
    Map<String, Object> getFormData(String table_name, Long ID)  ;

    SettleBizform saveData(WorkflowSaveDataReq jsonObject);

    List<SettleBizform> getFlowStepForm(String stepInsCode);

    SettleBizform makePdf(WorkflowMakePdfReq req);
}
